5
תגובות
אני עובד עכשיו על קלאס לעבודה עם PDO.תוך כדי נכנסתי לדוקומנטציה והתחלתי להסתכל בקלאס של PDO וכל מה שמסביב, פתאום אני רואה שיש קלאס נפרד מPDO, הקלאס PDOStatement - ויש לו מתודות משלו והכול. הוא ממש מחלקה בפני עצמה. עכשיו חשבתי לעצמי, אם במחלקה הראשית שלי - שיוצרת את החיבור עם PDO - אני יורש מPDO, אז אולי גם המחלקה המשנית - שאיתה אני עובד עם השאילתות והכול - אני צריך לרשת מPDOStatement ?
מה אתם אומרים ?
ועוד שאלה:
מה עדיף , להשתמש בquery/exec, או בprepare? אני מתכוון כשאין שימוש בp.s., כשיש שאילתה רגילה כמו " select * from test".
האם השימוש בprepare משנה במקרה כזה, או שאפשר להישאר עם הפונקציה הרגילות query/exec ?
תודהה (:
מה אתם אומרים ?
ועוד שאלה:
מה עדיף , להשתמש בquery/exec, או בprepare? אני מתכוון כשאין שימוש בp.s., כשיש שאילתה רגילה כמו " select * from test".
האם השימוש בprepare משנה במקרה כזה, או שאפשר להישאר עם הפונקציה הרגילות query/exec ?
תודהה (:
5 תשובות
1. ה-PDO יורש כבר את ה-PDOStatement ככה שאין לך באמת מה להתעסק פה או לשבור את הראש
2. query זה הפתרון בשבילך.
exec - נועד לבצע פעולה במסד מבלי להחזיר מידע, למעט כל כמה שורות הוא השפיע.
@matan sh
חשבתי על זה, ואני דווקא חושב שאני כן צריך לרשת את המחלקה הזאת.
כי תקשיב, כשאני רוצה להשתמש בbindParam - מה אני ישתמש בזה בצורה הזאתי :
$this->instance->bindParam(x,x,x);
או יצור מתודה בתוך המחלקה שלי, שתחזיר את
$this->instance->bindParam(x,x,x);
?לא יותר פשוט לרשת את זה? כי מטרת המחלקה שלי גם ככה היא להרחיב את האובייקט PDOStatement
--עריכה: חחח עזוב לא משנה, חשבתי על זה שוב ויצאתי מטומטם..לא נורא מזה לומדים (:
2.כן אני יודע, עם SELECT עדיף להשתמש בquery ולכל השאר בexec? כי היא היחידה שמחזירה מידע .. כל השאר מבצעות פעולות
2. כן, למרות ש-prepare יכול להיות טוב להכל כי זה פשוט עוזר לך עם השמת המשתנים/תנאים וכו'. ממליץ לך להסתכל בדוקומנטציה כדי להבין יותר טוב בין ההבדלים